如果打算自動捨棄當前版本的object,可以選擇Expire current versions of objects
這個action,並設定要在object上傳後的幾天處理object,時間一到aws會排程,並根據bucket當前Bucket Versioning
的狀態決定怎麼處理目前版本的object:
需要特別注意的是,當object已經expire,當前版本是delete marker時,如果發送delete request請求刪除,只會刪掉delete marker,而過期的版本並不會刪除,除非是指定version id才能透過發送delete request刪除,雖然console或api都沒有看到任何object,但還是會殘留過期檔案佔空間,這部分仍需要付費。
如果要刪除不用的object,可以選擇Permanently delete noncurrent versions of objects這個action,並設定多少天之後讓當前版本的object過期,指定要留下多少版本的object,其餘的aws會執行刪除,刪除的過程並不會額外收取費用。
參考資料:
Deleting objects from versioning-suspended buckets